#TidyTuesday

Daily distribution by shift

Daily distribution by Primary Fur Color

Daily distribution by Location

neighboors=NA
for( i in unique(nyc_squirrels$date)){

date <- nyc_squirrels %>% filter(date==i)
  sp.mydata <- date 
  coordinates(sp.mydata) <- ~long+lat
  d <- distm(sp.mydata)
  min.d <- apply(d, 1, function(x) order(x, decreasing=F)[2])
  newdata <- cbind(date, date[min.d,], apply(d, 1, function(x) sort(x, decreasing=F)[2]))
 
  colnames(newdata) <- c(colnames(date), colnames(date), 'distance')
  
  neighboors <- rbind(neighboors,newdata[,c(3,6,8,9,39,44,45,73)])
}

for_neighbor_plot <- as.data.frame(cbind("pair" = c("Same Age", "Both Adults", "Both Juveniles", "Same Fur", "Both Black Fur", "Both Gray Fur", "Both Cinnamon Fur"),
                            "freq" = c(length(which(neighboors$age==neighboors$age.1))/nrow(neighboors),
                            length(which(neighboors$age==neighboors$age.1 & neighboors$age=="Adult"))/length(which(neighboors$age=="Adult")),
                            length(which(neighboors$age==neighboors$age.1 & neighboors$age=="Juvenile"))/length(which(neighboors$age=="Juvenile")),
                            length(which(neighboors$primary_fur_color==neighboors$primary_fur_color.1))/nrow(neighboors),
                            length(which(neighboors$primary_fur_color==neighboors$primary_fur_color.1 & neighboors$primary_fur_color.1=="Black"))/length(which(neighboors$primary_fur_color=="Black")),
                            length(which(neighboors$primary_fur_color==neighboors$primary_fur_color.1 & neighboors$primary_fur_color.1=="Gray"))/length(which(neighboors$primary_fur_color=="Gray")),
                            length(which(neighboors$primary_fur_color==neighboors$primary_fur_color.1 & neighboors$primary_fur_color.1=="Cinnamon"))/length(which(neighboors$primary_fur_color=="Cinnamon"))),
                            
                            "avg.dist"= c(NA, mean(neighboors$distance[which(neighboors$age=="Adult")]),
                                          mean(neighboors$distance[which(neighboors$age=="Juvenile")]),
                                          NA,
                                          mean(neighboors$distance[which(neighboors$primary_fur_color=="Black")]),
                                          mean(neighboors$distance[which(neighboors$primary_fur_color=="Gray")]),
                                          mean(neighboors$distance[which(neighboors$primary_fur_color=="Cinnamon")]))
                                              
                            ))

for_neighbor_plot <- for_neighbor_plot %>% mutate(freq=as.numeric(as.character(freq)))
for_neighbor_plot$pair <-  factor(for_neighbor_plot$pair, levels = c("Same Age", "Both Adults", "Both Juveniles", "Same Fur", "Both Black Fur", "Both Gray Fur", "Both Cinnamon Fur"))

                            
for_neighbor_plot %>% 
  
  plot_ly() %>%
    add_trace(x=~pair, y=~freq, type = 'bar',
          #marker = list(color=c('green1', 'green2','green3', 'black', 'grey4', 'grey3', 'tan3')),
          text=~round(as.numeric(as.character(avg.dist)),2), textposition='auto') %>%
  
  layout(title="Nearest Neighbor Similarity Frequency",
         yaxis= list(title="Frequency of Occurance", range=c(0,1)),
         xaxis= list(title="")
  
  ) ##ADD ANNOTATIONS OF MEAN NEAREST NEIGHBOR

Evan W Barba

2019-10-29